﻿2026-08-08T22:32:00.8819243Z ##[group]Run python -m ruff check \
2026-08-08T22:32:00.8819818Z [36;1mpython -m ruff check \[0m
2026-08-08T22:32:00.8820304Z [36;1m  scripts/ci_portfolio_phase3_gate.py \[0m
2026-08-08T22:32:00.8820822Z [36;1m  src/jarvis_finance/api/main.py \[0m
2026-08-08T22:32:00.8821363Z [36;1m  src/jarvis_finance/api/routers/overview.py \[0m
2026-08-08T22:32:00.8821980Z [36;1m  src/jarvis_finance/api/schemas/portfolio_data.py \[0m
2026-08-08T22:32:00.8822670Z [36;1m  src/jarvis_finance/api/schemas/portfolio_performance.py \[0m
2026-08-08T22:32:00.8823359Z [36;1m  src/jarvis_finance/api/schemas/portfolio_policy.py \[0m
2026-08-08T22:32:00.8824077Z [36;1m  src/jarvis_finance/api/schemas/performance_activation.py \[0m
2026-08-08T22:32:00.8824761Z [36;1m  src/jarvis_finance/api/schemas/reconciliation.py \[0m
2026-08-08T22:32:00.8825326Z [36;1m  src/jarvis_finance/api/security.py \[0m
2026-08-08T22:32:00.8825816Z [36;1m  src/jarvis_finance/cli/main.py \[0m
2026-08-08T22:32:00.8826329Z [36;1m  src/jarvis_finance/config/settings.py \[0m
2026-08-08T22:32:00.8826902Z [36;1m  src/jarvis_finance/ledger/cost_basis.py \[0m
2026-08-08T22:32:00.8827451Z [36;1m  src/jarvis_finance/ledger/performance.py \[0m
2026-08-08T22:32:00.8828247Z [36;1m  src/jarvis_finance/market/providers.py \[0m
2026-08-08T22:32:00.8828783Z [36;1m  src/jarvis_finance/quality/freshness.py \[0m
2026-08-08T22:32:00.8829331Z [36;1m  src/jarvis_finance/quality/git_safety.py \[0m
2026-08-08T22:32:00.8829917Z [36;1m  src/jarvis_finance/services/crypto_market_recovery.py \[0m
2026-08-08T22:32:00.8831050Z [36;1m  src/jarvis_finance/services/performance_activation.py \[0m
2026-08-08T22:32:00.8831714Z [36;1m  src/jarvis_finance/services/portfolio_data.py \[0m
2026-08-08T22:32:00.8832367Z [36;1m  src/jarvis_finance/services/portfolio_performance.py \[0m
2026-08-08T22:32:00.8833035Z [36;1m  src/jarvis_finance/services/portfolio_policy.py \[0m
2026-08-08T22:32:00.8833714Z [36;1m  src/jarvis_finance/services/reconciliation_snapshot.py \[0m
2026-08-08T22:32:00.8834449Z [36;1m  src/jarvis_finance/services/truewealth_productization.py \[0m
2026-08-08T22:32:00.8835142Z [36;1m  src/jarvis_finance/services/truewealth_service.py \[0m
2026-08-08T22:32:00.8835806Z [36;1m  src/jarvis_finance/services/truewealth_valuation.py \[0m
2026-08-08T22:32:00.8836455Z [36;1m  src/jarvis_finance/services/transfer_pairing.py \[0m
2026-08-08T22:32:00.8837046Z [36;1m  src/jarvis_finance/storage/database.py \[0m
2026-08-08T22:32:00.8837612Z [36;1m  src/jarvis_finance/storage/migrations.py \[0m
2026-08-08T22:32:00.8838439Z [36;1m  tests/conftest.py \[0m
2026-08-08T22:32:00.8838928Z [36;1m  tests/unit/test_api_write_security.py \[0m
2026-08-08T22:32:00.8839454Z [36;1m  tests/unit/test_git_safety.py \[0m
2026-08-08T22:32:00.8840104Z [36;1m  tests/unit/test_portfolio_data_ingestion_reconciliation.py \[0m
2026-08-08T22:32:00.8840859Z [36;1m  tests/unit/test_portfolio_performance_foundation.py \[0m
2026-08-08T22:32:00.8841513Z [36;1m  tests/unit/test_portfolio_policy_foundation.py \[0m
2026-08-08T22:32:00.8842194Z [36;1m  tests/unit/test_reconciliation_snapshot_foundation.py \[0m
2026-08-08T22:32:00.8842793Z [36;1m  tests/unit/test_settings.py \[0m
2026-08-08T22:32:00.8843380Z [36;1m  tests/unit/test_sprint20d_truewealth_productization.py \[0m
2026-08-08T22:32:00.8844086Z [36;1m  tests/unit/test_sprint20d_truewealth_valuation.py \[0m
2026-08-08T22:32:00.8844776Z [36;1m  tests/unit/test_sprint20e_crypto_market_recovery.py \[0m
2026-08-08T22:32:00.8845295Z [36;1m  tests/unit/test_transfer_pairing_v2.py[0m
2026-08-08T22:32:00.8892641Z shell: /usr/bin/bash -e {0}
2026-08-08T22:32:00.8892920Z env:
2026-08-08T22:32:00.8893155Z   PYTHONPATH: src
2026-08-08T22:32:00.8893390Z   JARVIS_FINANCE_ENV: test
2026-08-08T22:32:00.8893777Z   JARVIS_FINANCE_DB_PATH: /tmp/financemanager-phase3-controls/finance.sqlite3
2026-08-08T22:32:00.8894299Z   JARVIS_FINANCE_RUNTIME_DIR: /tmp/financemanager-phase3-controls/runtime
2026-08-08T22:32:00.8894765Z   JARVIS_FINANCE_CI_ROOT: /tmp/financemanager-phase3-migration
2026-08-08T22:32:00.8895368Z   JARVIS_FINANCE_WRITE_MODE: disabled
2026-08-08T22:32:00.8895702Z   pythonLocation: /opt/hostedtoolcache/Python/3.11.15/x64
2026-08-08T22:32:00.8896124Z   PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.11.15/x64/lib/pkgconfig
2026-08-08T22:32:00.8896538Z   Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.11.15/x64
2026-08-08T22:32:00.8896927Z   Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.11.15/x64
2026-08-08T22:32:00.8897312Z   Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.11.15/x64
2026-08-08T22:32:00.8897697Z   LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.11.15/x64/lib
2026-08-08T22:32:00.8898149Z ##[endgroup]
2026-08-08T22:32:00.9479209Z All checks passed!
